package com.cskaoyan.javase._1extends._10final._3variable._1local;

/**
 * final修饰局部变量，表示最后的变量，最终的变量，即表示局部常量。（表示在整个程序期间，值不会再变了）
 * 语法:
 * 以方法为例,局部位置是有两个的:
 *      a.方法体,表示该变量取值不再改变了
 *      b.形参,不表示该方法调用时必须使用常量做实参
 *          表示该参数一旦传入方法,就不可以修改了
 *
 * @since 09:57
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
    public static void main(String[] args) {
        test(100);
        int a = 100;
        test(a);
    }

    public static void test(final int num) {
        final int a = 10;
        System.out.println(a);
        // a++;
        // a = 10;
        System.out.println(num);
        System.out.println(num + 100);
        // num++;

        final Student s = new Student(18);
        // s = new Student(88);
        s.age = 88;
    }

    public static void test(final Student s) {
        // s = new Student(11);
    }
}

class Student {
    int age;

    public Student(int age) {
        this.age = age;
    }
}
